<template>
    <header class="sticky top-0 z-10">
        <nav class="bg-white border-gray-200 border-b dark:border-gray-800 dark:bg-gray-900">
            <div class="max-w-screen-xl flex flex-wrap items-center justify-between mx-auto p-4">
                <!-- 博客 LOGO 、博客名称 -->
                <a href="/" class="flex items-center">
                    <img :src="blogSettingsStore.blogSettings.logo" class="h-8 mr-3 rounded-full" alt="Flowbite Logo" />
                    <span class="self-center text-2xl font-semibold whitespace-nowrap dark:text-white">{{
                        blogSettingsStore.blogSettings.name }}</span>
                </a>
                <div class="flex items-center md:order-2">
                    <button type="button" data-collapse-toggle="navbar-search" aria-controls="navbar-search"
                        aria-expanded="false"
                        class="md:hidden text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 rounded-lg text-sm p-2.5 mr-1">
                        <svg class="w-5 h-5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                            viewBox="0 0 20 20">
                            <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                                d="m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" />
                        </svg>
                        <span class="sr-only">Search</span>
                    </button>
                    <!-- 白天黑夜切换 -->
                    <button @click="toggleDark()" class="ml-1 mr-4 vt-switch vt-switch-appearance" type="button" role="switch" aria-label="切换深色模式"
                        aria-checked="false" data-v-d401ce6f=""><span class="vt-switch-check"><span
                                class="vt-switch-icon"><!--[-->
                                <!-- 太阳图标 -->
                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
                                    focusable="false" viewBox="0 0 24 24" class="vt-switch-appearance-sun"
                                    :class="[isDark ? 'hidden' : 'block']"
                                    >
                                    <path
                                        d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z">
                                    </path>
                                    <path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z">
                                    </path>
                                    <path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z">
                                    </path>
                                    <path
                                        d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z">
                                    </path>
                                    <path
                                        d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z">
                                    </path>
                                    <path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path>
                                    <path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path>
                                    <path
                                        d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z">
                                    </path>
                                    <path
                                        d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z">
                                    </path>
                                </svg>
                                <!-- 黑夜图标 -->
                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"
                                    viewBox="0 0 24 24" class="vt-switch-appearance-moon"
                                    :class="[isDark ? 'block' : 'hidden']"
                                    >
                                    <path
                                        d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z">
                                    </path>
                                </svg><!--]--></span></span></button>
                    <!-- 搜索框 -->
                    <button type="button" @click="clickSearchBtn"
                        class="mr-2 hidden outline-none md:flex items-center text-sm leading-6 text-slate-400 rounded-md ring-1 ring-slate-900/10 shadow-sm py-1.5 pl-2 pr-3 hover:ring-slate-300 dark:bg-slate-800 dark:highlight-white/5 dark:hover:bg-slate-700">
                        <svg class="w-3.5 h-3.5 mr-2 text-gray-500 dark:text-gray-400" aria-hidden="true"
                            xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
                            <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                                d="m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" />
                        </svg>
                        <span class="mr-3">搜索文章 ...</span>
                        <span class="px-2 py-[1px] flex-none text-xs border text-gray-400 rounded dark:border-gray-600">Ctrl K</span>
                    </button>

                    <!-- 登录 -->
                    <div class="text-gray-900 ml-1 mr-1 hover:text-blue-700 dark:text-white" v-if="!isLogined"
                        @click="router.push('/login')">登录</div>
                    <!-- 已经登录，展示用户头像 -->
                    <button id="dropdownDefaultButton" data-dropdown-toggle="dropdown" v-else
                        class="text-white ml-2 mr-2 md:mr-0 focus:ring-4 focus:ring-blue-300 font-medium rounded-full text-sm text-center inline-flex items-center dark:bg-blue-600 dark:hover:bg-sky-600 dark:focus:ring-blue-800"
                        type="button">
                        <!-- 用户登录头像 -->
                        <img class="w-8 h-8 rounded-full" :src="blogSettingsStore.blogSettings.avatar" alt="user photo">
                    </button>

                    <!-- Dropdown menu -->
                    <div id="dropdown"
                        class="z-10 hidden bg-white divide-y divide-gray-100 rounded-lg shadow dark:bg-gray-700">
                        <ul class="py-2 text-sm text-gray-700 dark:text-gray-200"
                            aria-labelledby="dropdownDefaultButton">
                            <li>
                                <a @click="router.push('/admin/index')"
                                    class="block px-4 py-2 hover:bg-gray-100 dark:hover:bg-gray-600 dark:hover:text-white">
                                    <svg class="inline w-3 h-3 mb-[2px] mr-1 text-gray-700 dark:text-white"
                                        aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                                        viewBox="0 0 20 20">
                                        <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
                                            stroke-width="2"
                                            d="M10 14v4m-4 1h8M1 10h18M2 1h16a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1Z" />
                                    </svg>
                                    进入后台
                                </a>
                            </li>
                            <li>
                                <a data-modal-target="popup-modal" data-modal-toggle="popup-modal"
                                    class="block px-4 py-2 hover:bg-gray-100 dark:hover:bg-gray-600 dark:hover:text-white">
                                    <svg class="inline w-3 h-3 mb-[2px] mr-1 text-gray-700 dark:text-white"
                                        aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                                        viewBox="0 0 16 16">
                                        <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
                                            stroke-width="2"
                                            d="M4 8h11m0 0-4-4m4 4-4 4m-5 3H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h3" />
                                    </svg>
                                    退出登录
                                </a>
                            </li>
                        </ul>
                    </div>

                    <button data-collapse-toggle="navbar-search" type="button"
                        class="inline-flex items-center p-2 w-10 h-10 justify-center text-sm text-gray-500 rounded-lg md:hidden hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-700 dark:focus:ring-gray-600"
                        aria-controls="navbar-search" aria-expanded="false">
                        <span class="sr-only">Open main menu</span>
                        <svg class="w-5 h-5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                            viewBox="0 0 17 14">
                            <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                                d="M1 1h15M1 7h15M1 13h15" />
                        </svg>
                    </button>
                </div>
                <div class="items-center justify-between hidden w-full md:flex md:w-auto md:order-1" id="navbar-search">
                    <!-- 移动端搜索框 -->
                    <button type="button" @click="clickSearchBtn"
                        class="relative mt-3 flex w-full md:hidden items-center text-sm leading-6 text-slate-400 rounded-md
                         ring-1 ring-slate-900/10 shadow-sm py-1.5 pl-2 pr-3 hover:ring-slate-300 dark:bg-slate-800 
                         dark:highlight-white/5 dark:hover:bg-slate-700 dark:hover:ring-slate-700">
                        <svg class="w-3.5 h-3.5 mr-2 text-gray-500 dark:text-gray-400" aria-hidden="true"
                            xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
                            <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                                d="m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" />
                        </svg>
                        <span class="mr-3 grow text-left">搜索文章 ...</span>
                        <span class="px-2 py-[1px] flex-none text-xs border text-gray-400 rounded dark:border-gray-600">Ctrl
                            K</span>
                    </button>

                    <ul
                        class="flex flex-col p-4 md:p-0 mt-4 font-medium border border-gray-100 rounded-lg bg-gray-50 md:flex-row md:space-x-8 md:mt-0 md:border-0 md:bg-white dark:bg-gray-800 md:dark:bg-gray-900 dark:border-gray-700">
                        <li>
                            <a @click="router.push('/')" :class="[currPath == '/' ? 'text-sky-600 md:border-b-2 md:border-sky-600 dark:text-sky-500 dark:md:border-sky-600' : 'text-gray-900 dark:text-white']"
                                class="block py-2 pl-3 pr-4 rounded md:rounded-none hover:bg-gray-100 md:hover:bg-transparent md:hover:text-sky-600 md:bg-transparent md:p-0 dark:hover:bg-gray-700 md:dark:hover:bg-transparent"
                                aria-current="page">首页</a>
                        </li>
                        <li>
                            <a @click="router.push('/category/list')"
                                :class="[currPath == '/category/list' ? 'text-sky-600 md:border-b-2 md:border-sky-600 dark:text-sky-500 dark:md:border-sky-600' : 'text-gray-900 dark:text-white']"
                                class="block py-2 pl-3 pr-4 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-sky-600 md:p-0 md:dark:hover:text-sky-500 dark:text-white dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700">
                                分类</a>
                        </li>
                        <li>
                            <a @click="router.push('/tag/list')"
                                :class="[currPath == '/tag/list' ? 'text-sky-600 md:border-b-2 md:border-sky-600 dark:text-sky-500 dark:md:border-sky-600' : 'text-gray-900 dark:text-white']"
                                class="block py-2 pl-3 pr-4 rounded md:rounded-none hover:bg-gray-100 md:hover:bg-transparent md:hover:text-sky-600 md:p-0 md:dark:hover:text-sky-500 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700">
                                标签</a>
                        </li>
                        <li>
                            <a @click="router.push('/archive/list')"
                                :class="[currPath == '/archive/list' ? 'text-sky-600 md:border-b-2 md:border-sky-600 dark:text-sky-500 dark:md:border-sky-600' : 'text-gray-900 dark:text-white']"
                                class="block py-2 pl-3 pr-4 rounded md:rounded-none hover:bg-gray-100 md:hover:bg-transparent md:hover:text-sky-600 md:p-0 md:dark:hover:text-sky-500 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700">
                                归档</a>
                        </li>
                    </ul>
                </div>
            </div>
        </nav>
    </header>
    <!-- 退出登录 -->
    <div id="popup-modal" tabindex="-1"
        class="fixed top-0 left-0 right-0 z-50 hidden p-4 overflow-x-hidden overflow-y-auto md:inset-0 h-[calc(100%-1rem)] max-h-full">
        <div class="relative w-full max-w-md max-h-full">
            <div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
                <button type="button"
                    class="absolute top-3 right-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ml-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
                    data-modal-hide="popup-modal">
                    <svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                        viewBox="0 0 14 14">
                        <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                            d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6" />
                    </svg>
                    <span class="sr-only">Close modal</span>
                </button>
                <div class="p-6 text-center">
                    <svg class="mx-auto mb-4 text-gray-400 w-12 h-12 dark:text-gray-200" aria-hidden="true"
                        xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
                        <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                            d="M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" />
                    </svg>
                    <h3 class="mb-5 text-lg font-normal text-gray-500 dark:text-gray-400">是否确定退出登录?
                    </h3>
                    <button @click="logout" data-modal-hide="popup-modal" type="button"
                        class="text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center mr-2">
                        确定
                    </button>
                    <button data-modal-hide="popup-modal" type="button"
                        class="text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600">
                        取消</button>
                </div>
            </div>
        </div>
    </div>


    <!-- 站内搜索 -->
    <div id="search-modal" tabindex="-1" aria-hidden="true"
        class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
        <div class="relative p-4 w-full max-w-2xl max-h-full">
            <!-- Modal content -->
            <div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
                <!-- Modal header -->
                <div class="flex items-center justify-between p-4 md:p-5 border-b rounded-t dark:border-gray-600">
                    <form class="w-full mr-2">
                        <label for="search"
                            class="mb-2 text-sm font-medium text-gray-900 sr-only dark:text-white">Search</label>
                        <div class="relative">
                            <div class="absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none">
                                <div v-if="searchLoading" role="status">
                                    <svg aria-hidden="true" class="w-4 h-4 text-gray-200 animate-spin dark:text-gray-600 fill-sky-600" viewBox="0 0 100 101" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z" fill="currentColor"/><path d="M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z" fill="currentFill"/></svg>
                                    <span class="sr-only">Loading...</span>
                                </div>
                                <svg v-else class="w-4 h-4 text-gray-500 dark:text-gray-400" aria-hidden="true"
                                    xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
                                    <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
                                        stroke-width="2" d="m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" />
                                </svg>
                            </div>

                            <input type="search" id="search-input" ref="searchInputRef" v-model="searchWord"
                                class="block w-full p-4 ps-10 text-sm text-gray-900 border border-gray-300 rounded-lg bg-gray-50 focus:ring-sky-500 focus:border-sky-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-sky-500 dark:focus:border-sky-500"
                                placeholder="请输入关键词搜索..." required>
                        </div>
                    </form>
                    <button type="button" @click="searchModal.hide()"
                        class="text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white">
                        <svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                            viewBox="0 0 14 14">
                            <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
                                d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6" />
                        </svg>
                        <span class="sr-only">Close modal</span>
                    </button>
                </div>
                <!-- Modal body -->
                <div class="p-4 md:p-5 space-y-4">
                    <div v-if="searchArticles && searchArticles.length > 0">
                        <p class="text-base leading-relaxed text-gray-500 dark:text-gray-400">
                            共搜索到 {{ total }} 篇相关文章
                        </p>
                        <ol class="mt-3 divide-y divider-gray-200 dark:divide-gray-600">
                            <li v-for="(article, index) in searchArticles" :key="index">
                                <a @click="jumpToArticleDetailPage(article.id)" class="items-center cursor-pointer block p-3 sm:flex hover:bg-gray-100 hover:rounded-lg dark:hover:bg-gray-600">
                                    <img class="w-24 h-full mb-3 mr-3 rounded-lg sm:mb-0"
                                        :src="article.cover">
                                    <div class="text-gray-600 dark:text-gray-400">
                                        <h2 class="text-base font-normal text-gray-900 dark:text-white" v-html="article.title"></h2>
                                        <span
                                            class="inline-flex items-center text-xs font-normal text-gray-500 dark:text-gray-400">
                                            <svg
                                                class="inline w-2.5 h-2.5 mr-2 text-gray-400"
                                                aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
                                                viewBox="0 0 20 20">
                                                <path stroke="currentColor" stroke-linecap="round"
                                                    stroke-linejoin="round" stroke-width="2"
                                                    d="M5 1v3m5-3v3m5-3v3M1 7h18M5 11h10M2 3h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z">
                                                </path>
                                            </svg>{{ article.createDate }}</span>
                                    </div>
                                </a></li>
                        </ol>
                        <!-- 分页 -->
                        <div class="flex mt-7">
                            <a v-if="current > 1" @click="prePage"
                                class="flex items-center justify-center px-3 h-8 me-3 text-xs font-medium text-gray-500 border 
                                border-gray-300 dark:border-gray-600 rounded-lg hover:bg-gray-100 hover:text-gray-700 
                                dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white">
                                <svg class="w-3 h-3 rtl:rotate-180" aria-hidden="true"
                                    xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 10">
                                    <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
                                        stroke-width="2" d="M13 5H1m0 0 4 4M1 5l4-4" />
                                </svg>
                            </a>

                            <a v-if="current < pages" @click="nextPage"
                                class="flex ml-auto items-center justify-center px-3 h-8 text-xs font-medium text-gray-500 
                                border border-gray-300 rounded-lg hover:bg-gray-100 hover:text-gray-700 dark:border-gray-600 
                             dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white">
                                <svg class="w-3 h-3 rtl:rotate-180" aria-hidden="true"
                                    xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 10">
                                    <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
                                        stroke-width="2" d="M1 5h12m0 0L9 1m4 4L9 9" />
                                </svg>
                            </a>
                        </div>
                    </div>
                    <!-- 未搜索到结果提示 -->
                    <div v-else class="flex items-center justify-center flex-col mb-10">
                        <svg class="w-50 h-50" height="200" node-id="1" sillyvg="true" template-height="1000" template-width="1287" version="1.1" viewBox="0 0 1287 1000" width="1287" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs node-id="31"></defs><path d="M 961.10 520.10 L 961.50 508.20 L 961.60 494.90 L 961.20 475.20 L 959.40 429.00 L 957.60 401.30 L 954.90 373.30 L 953.10 359.70 L 951.20 347.10 L 948.80 335.10 L 946.30 324.90 L 945.00 326.40 L 945.20 327.70 L 945.10 328.60 L 942.90 332.30 L 940.20 335.50 L 936.00 339.60 L 929.10 345.20 L 924.70 348.20 L 914.90 353.70 L 903.00 358.70 L 896.30 360.70 L 889.10 362.50 L 881.70 363.70 L 873.70 364.50 L 865.00 364.90 L 855.50 364.50 L 847.10 363.70 L 839.70 362.50 L 832.30 360.70 L 826.00 358.80 L 820.50 356.80 L 810.50 352.10 L 801.70 346.70 L 795.30 342.40 L 794.20 341.90 L 789.00 342.20 L 783.60 341.90 L 778.60 341.10 L 774.10 339.90 L 765.90 336.60 L 762.50 334.60 L 757.00 330.30 L 755.10 328.30 L 753.50 326.10 L 752.70 324.40 L 752.50 323.10 L 752.80 321.50 L 753.60 320.30 L 754.90 319.40 L 757.10 318.70 L 761.60 318.90 L 767.20 318.10 L 769.90 317.10 L 773.60 315.10 L 777.30 312.60 L 773.60 303.60 L 771.40 294.10 L 770.60 284.40 L 770.80 279.20 L 771.60 273.90 L 772.90 268.50 L 774.80 263.00 L 777.00 257.80 L 779.80 252.60 L 783.10 247.50 L 787.00 242.50 L 791.20 237.80 L 795.90 233.30 L 801.10 229.10 L 806.90 225.00 L 812.80 221.50 L 819.30 218.30 L 826.30 215.40 L 833.90 212.90 L 841.60 211.00 L 849.70 209.60 L 858.40 208.70 L 867.80 208.40 L 875.20 208.60 L 882.60 209.40 L 889.90 210.50 L 881.50 201.50 L 873.00 193.20 L 864.60 185.60 L 858.10 180.20 L 851.40 175.20 L 837.40 166.00 L 830.10 162.00 L 822.40 158.20 L 814.30 154.60 L 805.80 151.40 L 797.30 148.50 L 778.30 143.50 L 767.80 141.30 L 746.30 138.00 L 721.00 135.60 L 703.80 134.60 L 684.60 133.90 L 645.30 133.80 L 617.00 134.80 L 600.90 136.30 L 590.00 137.60 L 578.60 139.40 L 566.80 141.80 L 555.10 144.60 L 543.20 148.00 L 531.10 152.10 L 522.20 155.60 L 513.40 159.60 L 504.50 164.00 L 495.70 168.90 L 499.70 172.00 L 503.00 175.00 L 505.50 178.20 L 509.20 184.90 L 510.40 188.20 L 511.60 193.20 L 512.60 204.30 L 511.50 216.80 L 507.40 240.40 L 506.50 248.50 L 507.10 254.60 L 511.10 266.20 L 511.40 268.20 L 510.70 270.80 L 508.90 272.60 L 507.70 273.10 L 505.40 273.20 L 502.80 274.70 L 501.30 275.00 L 499.70 274.60 L 498.10 273.80 L 495.10 270.40 L 492.60 265.50 L 491.20 261.40 L 489.40 252.70 L 489.10 249.00 L 489.40 240.90 L 490.10 234.40 L 491.20 228.40 L 494.50 214.00 L 495.20 209.40 L 495.50 204.40 L 495.30 198.50 L 494.90 195.40 L 494.10 192.50 L 492.00 189.00 L 490.60 187.70 L 488.90 186.70 L 486.70 186.00 L 483.90 185.80 L 481.80 186.00 L 479.50 186.60 L 477.10 187.90 L 475.00 189.50 L 472.80 191.60 L 470.60 194.50 L 468.80 197.60 L 467.10 201.40 L 465.60 206.00 L 464.60 210.70 L 463.90 216.30 L 463.50 224.60 L 462.10 227.10 L 459.60 228.50 L 458.20 228.70 L 455.30 228.00 L 453.50 225.90 L 452.70 222.90 L 452.80 217.60 L 450.90 216.00 L 449.60 212.70 L 448.90 205.40 L 449.10 201.80 L 441.70 208.20 L 433.90 215.60 L 425.90 224.00 L 418.20 232.70 L 410.40 242.30 L 402.50 252.80 L 395.00 263.60 L 387.50 275.00 L 380.20 287.20 L 373.40 299.70 L 366.80 312.70 L 360.50 326.30 L 354.80 340.10 L 349.50 354.40 L 344.70 369.00 L 341.60 380.10 L 336.30 402.80 L 334.30 414.30 L 332.60 425.90 L 331.40 437.60 L 330.70 449.40 L 330.50 461.30 L 331.20 471.10 L 333.40 482.10 L 345.20 478.90 L 352.10 477.70 L 366.80 476.20 L 375.30 476.00 L 384.40 476.30 L 402.10 477.90 L 410.80 479.20 L 427.20 482.60 L 438.90 485.70 L 449.60 489.00 L 468.50 495.70 L 492.00 505.50 L 496.30 461.90 L 499.40 436.90 L 500.40 425.00 L 501.70 417.50 L 503.60 410.20 L 506.00 402.90 L 508.90 395.90 L 512.30 389.10 L 516.10 382.50 L 520.50 376.10 L 525.30 370.00 L 530.50 364.20 L 536.10 358.60 L 542.20 353.30 L 548.50 348.30 L 555.20 343.70 L 562.20 339.50 L 569.70 335.50 L 577.30 332.10 L 585.20 329.00 L 593.40 326.30 L 601.90 324.10 L 610.50 322.30 L 619.30 321.10 L 628.30 320.30 L 637.60 320.00 L 647.70 320.30 L 657.70 321.20 L 667.50 322.70 L 677.30 324.70 L 686.90 327.40 L 696.40 330.60 L 705.60 334.40 L 714.70 338.80 L 723.10 343.60 L 730.80 348.40 L 737.70 353.30 L 743.90 358.20 L 750.00 363.70 L 755.40 369.10 L 760.20 374.40 L 764.50 379.70 L 769.80 387.30 L 774.30 394.50 L 778.00 401.50 L 781.30 408.70 L 783.90 415.50 L 785.90 421.70 L 788.30 430.90 L 789.70 438.50 L 790.60 445.50 L 791.10 454.70 L 806.50 454.20 L 817.60 454.70 L 834.20 457.00 L 843.80 458.90 L 854.60 461.70 L 869.40 466.60 L 877.20 469.70 L 884.80 473.20 L 892.40 477.20 L 900.10 481.80 L 907.40 486.80 L 914.60 492.40 L 921.60 498.70 L 926.50 503.70 L 931.20 509.10 L 935.70 515.00 L 940.00 521.30 L 943.90 527.80 L 947.40 534.70 L 950.70 542.30 L 953.60 550.30 L 959.60 550.30 L 960.90 523.10 L 959.40 524.80 L 958.30 525.50 L 956.70 525.80 L 946.20 513.50 L 934.50 500.90 L 927.40 493.90 L 919.20 486.40 L 907.20 476.70 L 893.80 467.50 L 886.70 463.20 L 879.30 459.30 L 871.60 455.80 L 863.80 452.90 L 855.60 450.40 L 849.40 449.00 L 843.10 447.90 L 836.70 447.30 L 830.10 447.00 L 819.70 447.80 L 818.20 447.50 L 816.40 446.30 L 815.70 445.20 L 815.40 443.60 L 815.60 442.20 L 816.30 441.00 L 817.50 440.10 L 819.70 439.30 L 820.00 437.00 L 820.70 436.00 L 823.30 435.10 L 826.60 434.90 L 838.90 435.30 L 847.20 436.20 L 855.20 437.50 L 862.90 439.30 L 877.80 444.10 L 891.40 450.10 L 900.10 454.80 L 908.10 459.70 L 915.60 464.90 L 922.70 470.40 L 929.20 475.90 L 934.90 481.30 L 945.20 492.30 L 954.50 504.40 L 957.90 509.90 L 959.80 513.70 L 960.90 517.40 L 960.40 519.20 L 961.10 520.10 Z M 450.10 351.40 L 448.20 351.10 L 438.30 348.50 L 434.60 347.80 L 430.50 347.60 L 430.10 354.40 L 429.60 356.90 L 428.70 359.40 L 426.00 363.40 L 422.30 366.50 L 420.00 367.70 L 417.60 368.40 L 412.90 368.60 L 408.00 367.50 L 405.60 366.40 L 402.90 364.10 L 401.00 360.80 L 400.20 355.90 L 400.80 352.00 L 402.60 348.60 L 405.00 345.50 L 401.40 346.60 L 396.20 349.00 L 393.10 351.20 L 390.80 353.30 L 385.20 360.50 L 384.00 361.40 L 382.60 361.70 L 381.00 361.40 L 379.70 360.70 L 378.80 359.50 L 378.20 358.10 L 377.10 357.30 L 375.90 355.20 L 376.10 351.80 L 376.90 349.50 L 378.40 347.00 L 382.70 342.50 L 388.70 338.20 L 395.90 335.00 L 399.80 333.90 L 403.90 333.20 L 408.10 332.90 L 411.60 333.20 L 414.00 333.80 L 419.70 336.20 L 425.50 335.10 L 429.30 334.90 L 435.70 335.60 L 442.50 337.40 L 448.20 340.10 L 449.60 341.20 L 451.00 343.20 L 452.80 344.40 L 453.80 345.70 L 454.10 347.20 L 453.40 349.50 L 451.70 351.10 L 450.10 351.40 Z M 513.60 281.60 L 515.80 280.20 L 517.10 280.00 L 518.40 280.20 L 519.40 280.60 L 521.10 282.30 L 521.80 284.60 L 521.30 286.70 L 520.40 288.50 L 517.10 292.80 L 515.70 293.70 L 513.90 294.00 L 512.00 293.80 L 510.60 293.10 L 509.40 292.00 L 508.50 290.70 L 508.00 289.10 L 507.90 286.10 L 509.00 283.70 L 510.10 282.60 L 511.50 281.90 L 513.60 281.60 Z M 485.00 439.00 L 485.70 454.20 L 485.50 455.70 L 484.80 457.00 L 483.60 457.80 L 482.20 458.10 L 480.90 458.00 L 479.80 457.20 L 478.50 457.90 L 475.90 458.20 L 475.00 457.80 L 474.20 457.20 L 473.30 455.60 L 472.30 449.90 L 471.90 436.00 L 472.30 425.70 L 473.10 416.10 L 474.50 407.10 L 476.30 398.80 L 478.70 390.50 L 481.40 382.70 L 484.50 375.40 L 487.90 368.70 L 491.70 362.10 L 495.80 355.90 L 500.00 350.20 L 504.40 345.00 L 510.70 338.30 L 517.10 332.30 L 523.50 327.00 L 536.70 317.90 L 542.90 314.20 L 555.10 308.10 L 568.00 303.00 L 573.50 301.30 L 580.10 300.00 L 581.80 300.30 L 583.00 301.30 L 583.90 302.60 L 584.20 304.20 L 583.20 305.60 L 585.90 305.70 L 587.10 306.40 L 587.90 307.60 L 588.20 309.00 L 587.90 309.60 L 587.00 310.30 L 584.70 311.40 L 569.00 316.60 L 553.70 322.70 L 545.20 327.00 L 539.60 330.20 L 528.00 338.20 L 522.50 342.90 L 517.10 348.20 L 511.70 354.10 L 504.60 363.90 L 501.20 369.50 L 498.00 375.60 L 495.20 381.70 L 492.70 388.40 L 490.50 395.60 L 488.50 403.50 L 487.00 411.30 L 485.90 419.80 L 485.20 429.00 L 485.00 439.00 Z M 671.00 246.60 L 670.90 247.00 L 675.30 247.30 L 680.20 248.70 L 684.20 251.30 L 686.70 254.70 L 687.60 256.80 L 688.20 259.40 L 688.40 262.60 L 688.20 264.40 L 687.10 268.00 L 686.10 270.00 L 684.50 272.20 L 681.60 274.60 L 677.40 276.40 L 671.60 277.10 L 668.20 276.90 L 665.50 276.30 L 663.30 275.40 L 659.50 272.80 L 656.60 269.20 L 654.50 265.40 L 652.30 268.40 L 648.70 275.20 L 646.80 281.00 L 646.30 285.50 L 645.50 286.90 L 643.60 288.10 L 640.90 288.00 L 639.80 287.40 L 638.90 286.50 L 638.30 285.20 L 636.80 283.40 L 636.20 280.10 L 636.40 278.50 L 637.70 274.00 L 640.60 267.40 L 643.10 263.40 L 645.40 260.50 L 648.00 258.20 L 654.10 253.80 L 655.40 252.50 L 659.80 243.00 L 664.50 236.50 L 667.00 233.80 L 672.50 229.40 L 675.30 227.80 L 680.60 225.70 L 685.00 225.00 L 689.00 225.50 L 692.70 227.00 L 693.70 228.00 L 694.40 229.20 L 694.60 230.60 L 694.40 231.90 L 693.20 233.60 L 691.80 234.40 L 684.30 236.80 L 681.30 238.10 L 675.70 241.70 L 671.00 246.60 Z" fill="#5fc690" fill-rule="nonzero" node-id="33" stroke="none" target-height="416.5" target-width="631.1" target-x="330.5" target-y="133.8"/><path d="M 986.20 550.20 L 953.60 550.30 L 950.70 542.30 L 947.40 534.70 L 943.90 527.80 L 940.00 521.30 L 935.70 515.00 L 931.20 509.10 L 926.50 503.70 L 921.60 498.70 L 914.60 492.40 L 907.40 486.80 L 900.10 481.80 L 892.40 477.20 L 884.80 473.20 L 877.20 469.70 L 861.90 463.90 L 854.60 461.70 L 843.80 458.90 L 834.20 457.00 L 825.00 455.60 L 810.80 454.30 L 791.10 454.70 L 790.60 445.50 L 789.70 438.50 L 788.30 430.90 L 785.90 421.70 L 783.90 415.50 L 781.30 408.70 L 778.00 401.50 L 774.30 394.50 L 769.80 387.30 L 764.50 379.70 L 760.20 374.40 L 755.40 369.10 L 750.00 363.70 L 743.90 358.20 L 737.70 353.30 L 730.80 348.40 L 723.10 343.60 L 714.70 338.80 L 705.60 334.40 L 696.40 330.60 L 686.90 327.40 L 677.30 324.70 L 667.50 322.70 L 657.70 321.20 L 647.70 320.30 L 637.60 320.00 L 628.30 320.30 L 619.30 321.10 L 610.50 322.30 L 601.90 324.10 L 593.40 326.30 L 585.20 329.00 L 577.30 332.10 L 569.70 335.50 L 562.20 339.50 L 555.20 343.70 L 548.50 348.30 L 542.20 353.30 L 536.10 358.60 L 530.50 364.20 L 525.30 370.00 L 520.50 376.10 L 516.10 382.50 L 512.30 389.10 L 508.90 395.90 L 506.00 403.00 L 503.60 410.20 L 501.70 417.50 L 500.40 425.00 L 499.40 436.90 L 496.30 461.90 L 492.00 505.50 L 468.50 495.70 L 459.80 492.40 L 438.90 485.70 L 427.20 482.60 L 410.80 479.20 L 393.30 476.90 L 384.40 476.30 L 375.30 476.00 L 365.90 476.30 L 357.40 477.00 L 349.90 478.00 L 343.20 479.30 L 336.30 481.20 L 330.20 483.20 L 324.70 485.50 L 319.90 488.00 L 311.00 493.80 L 304.10 499.90 L 300.20 504.40 L 296.90 508.80 L 294.30 513.20 L 292.00 517.70 L 288.90 525.80 L 286.60 535.80 L 285.90 541.20 L 285.90 550.20 L 288.40 560.60 L 291.30 570.50 L 294.50 579.90 L 298.10 589.00 L 302.00 597.70 L 307.40 608.50 L 313.30 618.80 L 319.70 628.60 L 326.50 638.00 L 333.70 647.00 L 341.40 655.70 L 349.40 664.10 L 357.90 672.20 L 375.70 687.40 L 394.90 701.70 L 408.20 710.60 L 421.90 719.30 L 436.10 727.70 L 457.80 739.80 L 480.10 751.60 L 548.40 786.00 L 571.00 797.70 L 572.50 798.10 L 573.30 797.80 L 576.30 795.30 L 595.70 772.40 L 605.60 784.20 L 622.70 803.00 L 638.50 818.40 L 651.90 829.70 L 663.00 837.60 L 672.90 843.30 L 682.30 847.20 L 686.30 848.30 L 692.10 849.00 L 694.70 848.80 L 697.30 848.00 L 699.00 847.20 L 701.60 845.00 L 702.60 843.60 L 703.20 841.90 L 703.40 839.90 L 703.20 837.90 L 701.40 832.80 L 696.50 824.20 L 683.70 806.50 L 678.80 799.10 L 677.00 795.20 L 676.80 793.90 L 677.10 791.80 L 677.90 791.60 L 679.90 792.10 L 683.40 793.70 L 709.40 808.90 L 722.20 815.00 L 728.60 817.30 L 733.00 818.40 L 737.10 819.10 L 741.00 819.30 L 745.00 819.20 L 748.60 818.60 L 750.80 817.80 L 752.70 816.80 L 754.30 815.40 L 755.50 813.60 L 756.20 811.30 L 756.60 808.30 L 755.70 803.40 L 754.70 800.90 L 751.00 795.10 L 744.90 788.40 L 739.70 783.70 L 733.90 779.10 L 713.00 763.40 L 710.40 761.20 L 707.80 757.90 L 739.80 761.80 L 753.30 763.20 L 765.80 763.70 L 769.50 763.10 L 773.30 760.70 L 776.60 756.80 L 778.30 753.00 L 778.50 751.70 L 778.20 750.10 L 777.20 748.20 L 775.20 745.90 L 771.80 743.10 L 764.30 738.50 L 752.20 733.10 L 743.50 730.00 L 732.90 726.90 L 720.30 723.90 L 732.40 717.80 L 740.70 712.80 L 744.30 709.80 L 748.40 705.10 L 749.90 702.30 L 751.10 699.40 L 751.80 696.10 L 752.10 692.40 L 751.20 687.40 L 750.40 685.60 L 749.20 683.90 L 747.50 682.50 L 744.60 681.40 L 737.80 681.40 L 718.30 683.40 L 676.30 685.70 L 669.70 686.90 L 662.90 688.90 L 675.30 673.10 L 677.30 670.30 L 677.80 668.90 L 676.80 665.60 L 673.10 660.90 L 665.60 654.40 L 660.20 650.40 L 651.50 644.60 L 629.50 631.60 L 616.90 624.60 L 590.30 610.80 L 562.80 597.10 L 536.10 584.40 L 475.20 556.70 L 475.30 556.30 L 786.50 556.90 L 788.50 579.80 L 790.60 591.20 L 793.30 598.80 L 795.10 602.20 L 797.20 604.90 L 799.50 607.10 L 801.60 608.40 L 803.80 609.40 L 806.40 610.00 L 809.30 610.20 L 814.90 610.10 L 821.50 609.10 L 824.70 607.40 L 828.00 604.40 L 829.30 605.70 L 830.70 606.40 L 833.30 607.30 L 836.60 607.70 L 841.90 608.00 L 846.80 607.80 L 853.90 606.40 L 856.30 605.50 L 859.90 603.00 L 865.80 605.30 L 869.40 605.70 L 873.10 605.40 L 876.50 604.80 L 879.40 603.80 L 882.00 602.40 L 885.20 600.10 L 888.00 597.30 L 890.40 594.10 L 894.00 587.00 L 896.90 577.30 L 897.80 571.80 L 899.10 557.20 L 925.60 557.80 L 932.50 557.30 L 998.30 557.20 L 1000.30 556.30 L 1000.90 555.40 L 1001.10 552.80 L 1000.80 552.00 L 1000.20 551.40 L 997.40 550.60 L 986.20 550.20 Z M 741.50 688.10 L 742.90 688.30 L 744.30 689.10 L 744.80 690.30 L 745.00 692.50 L 744.80 695.10 L 743.20 699.70 L 741.80 701.80 L 739.60 704.40 L 736.90 706.90 L 733.80 709.20 L 728.70 712.20 L 704.90 723.20 L 702.90 724.50 L 702.00 725.60 L 701.60 726.60 L 701.90 727.90 L 702.60 728.90 L 703.70 729.60 L 713.40 730.00 L 719.50 730.90 L 733.10 734.20 L 740.40 736.40 L 754.70 742.00 L 761.10 745.10 L 765.10 747.40 L 771.40 751.70 L 770.00 754.00 L 767.70 756.20 L 766.50 756.60 L 764.00 756.80 L 753.40 756.20 L 716.40 751.70 L 709.50 751.10 L 705.50 751.40 L 703.60 752.00 L 701.90 753.00 L 701.00 754.00 L 700.40 755.30 L 700.20 757.10 L 700.50 758.80 L 701.30 760.80 L 702.90 763.00 L 705.90 766.20 L 714.50 773.50 L 735.20 789.10 L 739.80 793.00 L 744.90 798.30 L 748.30 803.40 L 749.20 805.80 L 749.50 808.10 L 749.30 810.00 L 748.90 810.90 L 748.20 811.30 L 744.10 812.00 L 740.80 812.20 L 733.40 811.30 L 729.30 810.20 L 723.40 807.90 L 717.20 805.00 L 711.10 801.80 L 688.80 788.80 L 684.30 786.60 L 681.40 785.40 L 676.90 784.50 L 674.00 785.10 L 671.70 786.90 L 670.20 790.00 L 669.80 793.70 L 670.60 798.10 L 671.80 800.80 L 676.70 809.00 L 692.30 830.20 L 695.50 836.10 L 696.30 839.70 L 696.00 840.80 L 694.90 841.40 L 691.80 841.90 L 685.80 841.10 L 682.40 840.10 L 674.10 836.30 L 663.90 830.00 L 656.30 824.30 L 648.40 817.70 L 633.30 803.60 L 619.50 789.50 L 600.30 768.00 L 633.70 723.90 L 640.10 716.10 L 645.90 709.80 L 649.80 706.00 L 657.70 700.00 L 661.90 697.60 L 666.30 695.50 L 671.20 693.70 L 681.80 691.10 L 688.30 690.10 L 698.50 689.10 L 711.10 688.50 L 741.50 688.10 Z M 490.80 549.30 L 459.30 549.30 L 456.90 549.80 L 454.00 549.20 L 443.40 545.70 L 457.40 529.80 L 462.30 523.40 L 463.90 520.60 L 464.30 519.10 L 464.00 518.00 L 463.40 517.00 L 462.40 516.40 L 460.40 516.20 L 459.20 516.90 L 448.50 529.40 L 436.40 542.30 L 435.10 542.60 L 433.70 542.30 L 422.20 538.80 L 412.30 536.10 L 407.20 535.30 L 402.60 534.90 L 398.70 535.10 L 391.40 536.30 L 387.90 537.30 L 382.00 540.00 L 379.40 541.80 L 377.20 543.80 L 375.50 546.00 L 374.20 548.30 L 373.40 550.90 L 373.10 553.70 L 373.40 555.90 L 374.10 557.90 L 375.40 559.90 L 378.80 563.40 L 381.00 565.00 L 384.70 566.90 L 388.70 568.40 L 392.90 569.30 L 396.90 569.60 L 401.20 569.40 L 405.20 568.70 L 409.00 567.70 L 414.60 565.60 L 419.50 563.10 L 424.20 560.30 L 434.20 553.10 L 436.50 551.50 L 437.60 551.10 L 440.90 551.40 L 445.40 552.20 L 451.20 553.80 L 460.10 556.80 L 471.10 561.10 L 482.60 565.90 L 508.60 577.90 L 550.50 598.80 L 601.60 625.90 L 639.10 646.60 L 611.50 684.10 L 609.60 687.80 L 609.80 688.90 L 610.40 689.80 L 611.30 690.50 L 612.40 690.70 L 613.40 690.40 L 615.10 689.00 L 617.90 685.70 L 634.80 662.40 L 643.80 650.60 L 670.50 667.80 L 613.10 740.20 L 571.90 791.10 L 550.80 780.10 L 585.50 737.10 L 587.90 733.30 L 587.60 732.10 L 587.00 731.20 L 586.10 730.60 L 585.00 730.40 L 584.20 730.60 L 580.50 734.00 L 545.20 777.10 L 524.70 767.80 L 505.80 758.80 L 488.40 750.00 L 472.30 741.50 L 456.10 732.40 L 441.10 723.60 L 427.50 715.10 L 415.10 706.80 L 402.50 698.10 L 380.80 681.60 L 371.50 673.80 L 353.80 657.70 L 339.80 643.10 L 331.20 633.10 L 324.00 623.90 L 318.00 615.40 L 312.50 606.60 L 308.00 598.60 L 304.40 591.40 L 301.20 583.90 L 296.90 571.70 L 294.90 563.40 L 293.80 557.10 L 293.20 548.30 L 293.60 539.30 L 294.40 533.20 L 295.70 527.60 L 297.50 522.40 L 299.80 517.40 L 302.50 512.80 L 305.60 508.50 L 309.20 504.70 L 313.10 501.10 L 317.30 497.90 L 321.90 495.00 L 326.90 492.40 L 337.50 488.30 L 349.40 485.30 L 357.60 484.10 L 366.20 483.30 L 375.20 483.00 L 384.40 483.30 L 393.60 484.00 L 402.70 485.10 L 411.70 486.60 L 428.80 490.30 L 441.10 493.60 L 462.50 500.80 L 479.10 507.50 L 491.40 513.20 L 490.80 549.30 Z M 429.00 548.10 L 418.40 555.70 L 414.90 557.70 L 407.90 560.70 L 404.40 561.70 L 400.80 562.40 L 397.10 562.60 L 392.50 562.20 L 390.00 561.60 L 387.20 560.40 L 384.50 558.70 L 381.20 556.10 L 380.40 554.90 L 380.10 553.60 L 380.40 552.00 L 381.20 550.30 L 382.60 548.40 L 384.40 546.90 L 386.80 545.40 L 390.00 544.00 L 393.40 543.00 L 397.40 542.30 L 402.40 542.10 L 408.00 542.40 L 413.40 543.50 L 429.00 548.10 Z M 739.90 492.00 L 739.30 494.90 L 738.40 497.60 L 735.60 502.90 L 734.60 500.60 L 733.10 499.20 L 731.80 499.00 L 729.90 499.60 L 728.50 501.50 L 728.60 508.30 L 717.70 511.50 L 715.70 512.30 L 713.70 514.10 L 713.00 515.40 L 712.30 517.70 L 711.80 521.40 L 710.10 549.60 L 566.80 549.60 L 565.50 538.80 L 564.90 537.20 L 563.90 536.10 L 562.50 535.30 L 560.70 534.90 L 545.30 532.90 L 538.50 531.40 L 534.70 530.10 L 528.80 527.40 L 525.80 525.50 L 523.00 523.10 L 521.50 521.40 L 520.40 519.40 L 519.60 517.30 L 517.40 505.40 L 516.70 493.20 L 517.40 479.80 L 519.40 467.80 L 521.50 460.00 L 523.90 452.80 L 526.60 446.20 L 533.10 433.80 L 536.60 428.40 L 544.00 418.50 L 553.30 408.60 L 563.10 400.20 L 571.50 394.60 L 577.20 401.20 L 582.50 406.70 L 587.30 411.20 L 592.40 415.40 L 601.40 421.30 L 605.80 423.60 L 613.50 426.70 L 619.00 428.20 L 631.60 430.20 L 634.80 430.90 L 637.20 431.90 L 634.70 432.70 L 632.00 433.10 L 627.80 432.50 L 626.60 432.70 L 625.60 433.30 L 624.80 434.30 L 624.60 435.50 L 624.80 436.60 L 626.20 438.10 L 629.50 439.30 L 632.50 439.50 L 636.30 439.20 L 639.20 438.60 L 641.90 437.60 L 647.30 434.00 L 652.20 436.30 L 660.70 441.20 L 666.40 445.50 L 671.50 449.90 L 684.80 462.90 L 691.50 468.70 L 697.00 472.10 L 699.80 473.20 L 702.90 474.00 L 706.10 474.20 L 710.40 473.60 L 712.90 472.00 L 713.50 470.80 L 713.80 468.50 L 714.00 451.20 L 714.70 441.10 L 715.80 432.00 L 717.00 425.30 L 718.60 419.40 L 720.20 415.40 L 722.10 412.10 L 723.70 410.00 L 725.50 408.50 L 728.50 407.40 L 733.20 407.60 L 735.30 408.20 L 739.50 410.10 L 742.50 413.00 L 743.60 414.70 L 744.40 417.00 L 744.90 419.80 L 745.40 432.00 L 745.00 443.70 L 744.10 453.70 L 739.90 492.00 Z M 887.10 586.00 L 886.00 588.80 L 884.60 591.10 L 883.00 593.10 L 878.90 596.20 L 876.60 597.20 L 871.70 598.40 L 867.20 598.40 L 864.30 597.40 L 865.50 592.50 L 866.80 582.50 L 866.90 576.80 L 866.50 566.40 L 865.50 556.10 L 863.80 544.70 L 863.10 543.70 L 862.20 543.10 L 861.00 542.90 L 859.70 543.10 L 858.90 543.60 L 858.40 544.40 L 857.90 547.80 L 859.60 567.90 L 859.70 582.50 L 858.90 590.60 L 857.30 595.20 L 856.00 597.00 L 854.40 598.40 L 852.40 599.50 L 847.40 600.70 L 839.10 600.70 L 837.30 600.30 L 834.60 598.90 L 832.60 596.60 L 832.00 593.90 L 832.70 588.00 L 833.00 581.50 L 832.80 574.30 L 832.40 568.20 L 829.60 546.70 L 829.30 545.50 L 828.60 544.60 L 827.70 543.90 L 826.50 543.60 L 825.20 543.90 L 824.30 544.50 L 823.80 545.40 L 823.40 548.30 L 825.60 573.10 L 826.10 582.20 L 825.50 591.00 L 824.00 596.70 L 821.90 600.20 L 820.50 601.40 L 817.50 602.80 L 814.90 603.20 L 809.50 603.30 L 805.60 602.40 L 802.50 600.20 L 800.80 598.10 L 799.30 595.50 L 798.00 592.30 L 796.60 587.40 L 794.70 576.20 L 793.20 555.40 L 792.70 553.10 L 791.60 551.10 L 789.30 549.10 L 785.10 547.60 L 777.80 547.00 L 775.20 547.20 L 780.60 540.30 L 785.00 536.30 L 787.80 534.50 L 794.50 531.50 L 803.90 529.10 L 817.20 527.40 L 828.90 526.70 L 844.40 526.40 L 863.90 526.70 L 868.50 527.10 L 876.00 528.60 L 879.30 529.90 L 882.20 531.50 L 884.70 533.60 L 886.80 536.00 L 888.60 539.10 L 890.10 542.90 L 891.00 546.90 L 891.70 551.90 L 891.90 558.10 L 891.20 567.60 L 889.00 579.20 L 887.10 586.00 Z M 898.60 550.20 L 897.50 544.70 L 895.00 536.70 L 892.00 531.30 L 890.10 529.00 L 887.80 526.80 L 885.00 524.90 L 882.10 523.40 L 878.40 522.00 L 874.00 520.90 L 864.00 519.70 L 857.50 519.50 L 823.50 520.00 L 815.30 520.50 L 804.60 521.80 L 792.70 524.60 L 791.20 461.80 L 806.10 461.10 L 815.70 461.40 L 824.90 462.20 L 833.80 463.40 L 842.40 465.10 L 850.90 467.30 L 859.10 469.90 L 866.90 472.70 L 874.40 475.90 L 881.80 479.60 L 895.30 487.40 L 901.50 491.70 L 913.10 501.00 L 918.20 505.70 L 927.50 515.70 L 931.50 520.70 L 938.00 530.60 L 943.00 540.80 L 946.00 550.20 Z" fill="#000000" fill-rule="nonzero" node-id="35" stroke="none" target-height="529" target-width="715.19995" target-x="285.9" target-y="320"/><path d="M 867.80 208.40 L 858.40 208.70 L 849.70 209.60 L 841.60 211.00 L 833.90 212.90 L 826.30 215.40 L 819.30 218.30 L 812.80 221.50 L 806.90 225.00 L 801.10 229.10 L 795.90 233.30 L 791.20 237.80 L 787.00 242.50 L 783.10 247.50 L 779.80 252.60 L 777.00 257.80 L 774.80 263.00 L 772.90 268.50 L 771.60 273.90 L 770.80 279.20 L 770.60 284.40 L 771.40 294.10 L 773.60 303.60 L 777.30 312.60 L 773.60 315.10 L 769.90 317.10 L 767.20 318.10 L 761.60 318.90 L 756.70 318.80 L 755.60 319.40 L 754.90 320.40 L 754.70 321.70 L 755.50 323.80 L 759.20 327.60 L 762.50 330.00 L 766.30 332.00 L 770.40 333.80 L 773.30 334.70 L 779.10 335.40 L 784.70 334.90 L 792.20 333.30 L 793.10 333.70 L 806.00 343.00 L 811.60 346.40 L 817.80 349.50 L 825.30 352.60 L 836.40 356.10 L 843.00 357.50 L 849.60 358.50 L 856.90 359.20 L 864.90 359.40 L 872.50 359.20 L 880.10 358.40 L 887.80 357.10 L 895.40 355.30 L 902.80 353.10 L 910.10 350.30 L 917.20 347.10 L 923.90 343.50 L 930.30 339.30 L 934.90 335.90 L 943.10 328.40 L 946.70 324.30 L 950.10 319.90 L 953.00 315.40 L 955.60 310.50 L 957.80 305.50 L 959.50 300.30 L 960.80 294.80 L 961.60 289.10 L 961.80 283.10 L 961.50 276.70 L 960.50 270.50 L 959.00 264.60 L 956.80 258.90 L 954.10 253.30 L 950.90 248.10 L 947.20 243.10 L 943.00 238.30 L 938.40 233.80 L 933.40 229.70 L 928.10 225.90 L 922.30 222.30 L 916.30 219.20 L 910.00 216.50 L 903.40 214.10 L 896.60 212.00 L 889.60 210.50 L 882.50 209.30 L 875.20 208.60 L 867.80 208.40 Z M 864.90 352.50 L 857.00 352.20 L 849.80 351.50 L 843.40 350.50 L 837.00 349.00 L 826.30 345.50 L 821.30 343.40 L 813.10 339.10 L 807.70 335.60 L 797.20 327.70 L 794.90 326.10 L 793.70 325.70 L 785.90 327.70 L 779.50 328.40 L 776.40 328.20 L 773.30 327.60 L 770.30 326.50 L 767.50 325.10 L 774.10 322.80 L 777.20 321.20 L 780.30 319.10 L 784.30 315.80 L 785.80 313.90 L 786.10 312.70 L 785.90 311.70 L 782.60 307.20 L 780.50 301.80 L 778.90 296.20 L 777.90 290.40 L 777.60 284.60 L 777.90 279.20 L 778.70 274.00 L 780.00 268.80 L 781.90 263.70 L 784.20 258.80 L 787.00 254.00 L 790.30 249.40 L 794.10 244.80 L 798.20 240.60 L 802.70 236.70 L 807.70 233.00 L 813.10 229.50 L 818.80 226.40 L 824.80 223.70 L 831.20 221.20 L 838.00 219.20 L 844.90 217.60 L 852.10 216.40 L 859.60 215.70 L 867.60 215.40 L 874.00 215.60 L 886.80 217.10 L 893.10 218.50 L 899.40 220.20 L 911.20 224.60 L 916.80 227.30 L 922.30 230.40 L 927.40 233.80 L 932.10 237.50 L 936.50 241.50 L 940.50 245.80 L 944.10 250.40 L 947.20 255.20 L 949.90 260.30 L 952.00 265.70 L 953.50 271.30 L 954.50 277.10 L 954.80 283.40 L 954.50 288.70 L 953.70 293.90 L 952.40 299.10 L 950.50 304.30 L 948.20 309.20 L 945.40 313.90 L 942.10 318.60 L 938.30 323.10 L 934.20 327.30 L 929.60 331.20 L 924.70 334.90 L 919.20 338.40 L 913.60 341.50 L 907.60 344.20 L 901.20 346.60 L 894.40 348.70 L 887.60 350.30 L 880.40 351.50 L 872.80 352.20 L 864.90 352.50 Z" fill="#000000" fill-rule="nonzero" node-id="37" stroke="none" target-height="151" target-width="207.09998" target-x="754.7" target-y="208.4"/><path d="M 454.70 218.00 L 457.10 217.40 L 458.90 215.50 L 459.40 213.00 L 458.90 207.30 L 459.10 203.40 L 459.80 199.60 L 460.80 196.00 L 462.20 192.50 L 464.00 189.20 L 466.10 186.30 L 468.60 183.60 L 471.40 181.40 L 474.50 179.60 L 477.90 178.20 L 481.50 177.40 L 485.50 177.00 L 487.30 177.30 L 489.90 178.20 L 493.40 180.60 L 496.90 184.60 L 498.40 187.40 L 499.80 190.90 L 500.80 194.40 L 501.50 198.90 L 501.70 204.30 L 501.50 210.10 L 500.80 216.00 L 496.00 243.60 L 495.80 248.00 L 496.40 255.30 L 498.40 263.70 L 500.00 267.50 L 501.70 270.50 L 503.20 272.10 L 504.70 273.00 L 506.30 273.30 L 507.70 273.10 L 508.90 272.60 L 510.70 270.80 L 511.40 268.20 L 511.10 266.20 L 507.80 257.10 L 506.70 251.70 L 506.50 248.50 L 507.40 240.40 L 511.50 216.80 L 512.30 210.50 L 512.60 204.30 L 511.60 193.10 L 510.40 188.20 L 509.20 184.90 L 505.40 178.10 L 502.90 175.00 L 499.70 171.90 L 495.60 168.90 L 493.10 167.60 L 490.60 166.80 L 485.20 166.30 L 481.00 166.60 L 477.00 167.20 L 473.40 168.20 L 470.00 169.60 L 466.70 171.40 L 461.00 175.70 L 458.60 178.30 L 455.70 182.10 L 453.30 186.30 L 451.40 190.80 L 450.00 195.50 L 449.20 200.40 L 448.90 205.40 L 449.30 211.00 L 449.90 213.80 L 450.90 215.90 L 451.80 217.10 L 453.10 217.80 L 454.70 218.00 Z" fill="#000000" fill-rule="nonzero" node-id="39" stroke="none" target-height="106.999985" target-width="63.69998" target-x="448.9" target-y="166.3"/><path d="M 477.90 440.40 L 478.30 450.80 L 478.70 454.40 L 479.30 456.50 L 480.00 457.40 L 480.90 458.00 L 482.20 458.10 L 483.60 457.80 L 484.80 457.00 L 485.50 455.70 L 485.70 454.20 L 485.00 439.00 L 485.20 429.00 L 485.90 419.80 L 487.00 411.30 L 488.50 403.50 L 490.50 395.60 L 492.70 388.40 L 495.20 381.70 L 498.00 375.60 L 504.60 363.90 L 511.70 354.10 L 517.10 348.20 L 522.50 342.90 L 528.00 338.20 L 539.60 330.20 L 545.20 327.00 L 553.70 322.70 L 569.00 316.60 L 584.70 311.40 L 587.00 310.30 L 587.90 309.60 L 588.20 309.00 L 587.90 307.60 L 587.10 306.40 L 585.90 305.70 L 582.00 305.80 L 571.10 308.00 L 563.40 310.40 L 552.50 314.80 L 540.20 321.20 L 533.90 325.10 L 527.40 329.70 L 521.20 334.80 L 515.10 340.50 L 509.10 347.10 L 504.90 352.20 L 500.90 357.80 L 497.00 364.00 L 493.30 370.70 L 490.10 377.50 L 487.20 384.80 L 484.50 392.80 L 482.20 401.50 L 480.50 410.10 L 479.20 419.40 L 478.30 429.40 L 477.90 440.40 Z" fill="#000000" fill-rule="nonzero" node-id="41" stroke="none" target-height="152.4" target-width="110.30002" target-x="477.9" target-y="305.7"/><path d="M 830.20 434.90 L 823.30 435.10 L 820.70 436.00 L 820.00 437.00 L 819.70 438.50 L 819.80 439.60 L 820.90 441.20 L 822.00 441.70 L 823.90 442.00 L 837.60 442.10 L 845.30 442.80 L 852.70 443.80 L 866.60 447.10 L 873.20 449.20 L 885.40 454.20 L 893.10 458.20 L 900.20 462.40 L 906.80 466.80 L 919.00 476.50 L 924.20 481.30 L 931.60 488.80 L 943.40 502.70 L 956.00 519.60 L 957.60 520.80 L 958.90 520.50 L 960.00 519.80 L 960.70 518.70 L 960.90 517.40 L 960.70 516.00 L 957.90 509.90 L 954.50 504.40 L 949.10 497.10 L 940.40 487.00 L 929.20 475.90 L 922.70 470.40 L 915.60 464.90 L 908.10 459.70 L 900.10 454.80 L 891.40 450.10 L 877.80 444.10 L 870.50 441.60 L 862.90 439.30 L 855.20 437.50 L 847.20 436.20 L 838.90 435.30 L 830.20 434.90 Z" fill="#000000" fill-rule="nonzero" node-id="43" stroke="none" target-height="85.899994" target-width="141.20001" target-x="819.7" target-y="434.9"/><path d="M 379.90 358.50 L 381.10 358.20 L 382.10 357.60 L 382.80 356.70 L 383.10 355.50 L 382.60 353.30 L 383.40 351.30 L 387.10 347.70 L 390.40 345.30 L 394.20 343.30 L 401.40 340.60 L 404.50 340.10 L 409.80 339.90 L 405.50 344.80 L 402.80 349.10 L 402.00 351.70 L 401.70 354.70 L 401.90 357.40 L 402.70 359.70 L 403.90 361.70 L 405.60 363.30 L 406.90 364.00 L 410.20 364.70 L 412.30 364.50 L 414.80 363.70 L 417.20 362.60 L 419.60 360.90 L 421.80 358.90 L 423.50 356.40 L 424.30 354.50 L 425.10 350.10 L 424.60 346.50 L 423.70 342.70 L 426.40 342.10 L 429.10 341.90 L 432.50 342.10 L 437.90 343.30 L 446.30 346.90 L 448.00 347.20 L 449.20 346.90 L 450.20 346.20 L 450.90 345.20 L 451.10 343.90 L 450.90 342.80 L 448.80 340.50 L 446.40 339.10 L 443.20 337.70 L 436.10 335.70 L 429.30 334.90 L 425.50 335.10 L 419.70 336.20 L 414.00 333.80 L 411.60 333.20 L 408.10 332.90 L 403.90 333.20 L 399.80 333.90 L 395.90 335.00 L 392.10 336.50 L 388.70 338.20 L 382.70 342.50 L 378.40 347.00 L 376.90 349.50 L 376.10 351.80 L 375.80 355.00 L 376.80 357.00 L 377.70 357.80 L 379.90 358.50 Z M 416.70 344.80 L 417.60 347.20 L 418.00 349.80 L 417.20 353.20 L 414.80 355.90 L 413.20 356.90 L 410.40 357.60 L 409.30 357.20 L 408.90 356.40 L 408.70 354.70 L 409.00 352.60 L 409.90 350.70 L 412.80 347.30 L 416.70 344.80 Z" fill="#000000" fill-rule="nonzero" node-id="45" stroke="none" target-height="31.800018" target-width="75.30002" target-x="375.8" target-y="332.9"/><path d="M 640.80 286.10 L 642.00 285.80 L 642.90 285.10 L 643.60 284.20 L 643.90 283.00 L 643.20 280.00 L 644.60 275.70 L 647.30 270.00 L 650.80 265.10 L 654.60 262.00 L 655.80 266.00 L 657.00 268.20 L 658.60 270.20 L 660.70 271.90 L 662.40 272.80 L 664.50 273.40 L 667.00 273.60 L 671.50 272.80 L 676.00 270.70 L 679.50 267.50 L 680.80 265.60 L 681.60 263.60 L 681.90 261.40 L 681.70 259.60 L 681.10 257.90 L 678.70 254.70 L 674.70 252.30 L 672.40 251.50 L 669.60 250.90 L 663.80 250.80 L 665.80 246.70 L 668.30 242.90 L 671.20 239.60 L 674.20 236.80 L 677.40 234.50 L 680.40 232.90 L 683.50 231.80 L 686.10 231.40 L 689.60 231.90 L 691.50 231.20 L 692.30 229.80 L 692.50 228.80 L 692.20 227.50 L 690.40 226.00 L 686.60 225.10 L 682.90 225.20 L 677.90 226.60 L 672.50 229.40 L 667.00 233.80 L 662.00 239.60 L 659.80 243.00 L 655.40 252.50 L 654.10 253.80 L 648.00 258.20 L 645.40 260.50 L 643.10 263.40 L 640.60 267.40 L 639.10 270.30 L 636.40 278.50 L 636.20 280.10 L 636.50 282.60 L 637.20 284.00 L 639.20 285.70 L 640.80 286.10 Z M 666.90 257.80 L 668.90 257.90 L 672.40 258.90 L 674.50 260.50 L 674.70 261.40 L 674.40 262.60 L 672.10 264.80 L 668.70 266.30 L 667.00 266.50 L 665.10 266.20 L 663.80 265.50 L 662.90 264.50 L 661.80 261.90 L 661.50 258.60 L 666.90 257.80 Z" fill="#000000" fill-rule="nonzero" node-id="47" stroke="none" target-height="61" target-width="56.299988" target-x="636.2" target-y="225.1"/><path d="M 606.30 798.40 L 605.80 797.70 L 604.20 796.80 L 602.00 796.90 L 600.90 797.60 L 600.20 798.70 L 599.90 800.00 L 600.30 801.90 L 601.30 804.50 L 603.50 807.90 L 607.40 812.90 L 613.00 819.00 L 619.30 825.20 L 626.70 831.70 L 634.60 838.20 L 642.90 844.40 L 651.50 850.30 L 659.90 855.50 L 665.70 858.60 L 676.00 863.30 L 681.10 865.00 L 685.50 866.00 L 689.30 866.30 L 690.60 866.00 L 691.80 865.30 L 692.50 864.10 L 692.80 862.80 L 692.50 862.10 L 691.30 861.10 L 688.80 859.80 L 671.10 852.40 L 656.90 845.20 L 644.20 837.20 L 637.90 832.60 L 631.50 827.20 L 624.80 821.00 L 620.20 816.20 L 610.90 804.90 L 606.30 798.40 Z" fill="#000000" fill-rule="nonzero" node-id="49" stroke="none" target-height="69.5" target-width="92.89996" target-x="599.9" target-y="796.8"/><path d="M 724.80 587.70 L 726.50 587.50 L 728.00 586.80 L 728.50 586.00 L 728.80 584.80 L 728.50 583.60 L 728.00 582.80 L 726.10 582.10 L 724.20 581.90 L 589.80 582.10 L 588.30 582.30 L 586.80 583.00 L 586.20 583.80 L 586.00 585.00 L 586.30 586.20 L 586.80 587.00 L 588.70 587.70 L 590.70 587.80 L 724.80 587.70 Z" fill="#000000" fill-rule="nonzero" node-id="51" stroke="none" target-height="5.8999634" target-width="142.79999" target-x="586" target-y="581.9"/><path d="M 832.30 618.80 L 767.50 618.70 L 751.80 618.70 L 743.40 619.10 L 741.00 619.50 L 740.10 619.90 L 739.60 620.50 L 739.70 622.80 L 740.90 624.20 L 741.80 624.50 L 832.50 624.40 L 834.70 624.00 L 835.60 623.50 L 836.10 622.70 L 836.30 621.60 L 836.10 620.40 L 835.50 619.60 L 833.90 618.90 L 832.30 618.80 Z" fill="#000000" fill-rule="nonzero" node-id="53" stroke="none" target-height="5.799988" target-width="96.70001" target-x="739.6" target-y="618.7"/><path d="M 698.30 674.60 L 699.70 674.70 L 734.40 670.60 L 741.10 669.30 L 742.90 668.60 L 743.60 668.00 L 744.00 666.20 L 743.70 664.80 L 742.90 663.60 L 741.70 662.90 L 740.30 662.80 L 698.30 667.90 L 697.10 668.30 L 696.20 669.10 L 695.70 670.10 L 695.40 671.20 L 695.70 672.40 L 696.20 673.40 L 697.10 674.20 L 698.30 674.60 Z" fill="#000000" fill-rule="nonzero" node-id="55" stroke="none" target-height="11.900024" target-width="48.599976" target-x="695.4" target-y="662.8"/><path d="M 511.40 286.10 L 511.90 288.60 L 512.70 289.70 L 514.90 291.10 L 516.20 291.20 L 517.50 291.00 L 519.50 289.70 L 521.30 286.70 L 521.80 284.60 L 521.60 283.40 L 520.40 281.40 L 518.40 280.20 L 517.10 280.00 L 514.70 280.70 L 513.50 281.70 L 511.80 284.30 L 511.40 286.10 Z" fill="#000000" fill-rule="nonzero" node-id="57" stroke="none" target-height="11.200012" target-width="10.399994" target-x="511.4" target-y="280"/><path d="M 728.70 464.20 L 733.50 433.20 L 733.30 431.90 L 732.50 430.80 L 731.40 430.00 L 730.00 429.80 L 728.10 430.30 L 726.80 432.70 L 725.60 438.40 L 721.20 467.70 L 721.40 469.40 L 722.00 470.40 L 723.00 471.10 L 724.30 471.30 L 727.20 470.70 L 727.70 473.80 L 726.50 488.10 L 726.70 489.30 L 727.70 490.90 L 728.60 491.50 L 730.00 491.70 L 731.20 491.50 L 732.80 490.10 L 733.50 488.40 L 734.20 482.40 L 734.60 476.30 L 734.30 472.20 L 733.80 469.50 L 732.90 467.30 L 731.70 465.90 L 728.70 464.20 Z" fill="#000000" fill-rule="nonzero" node-id="59" stroke="none" target-height="61.900024" target-width="13.399963" target-x="721.2" target-y="429.8"/><path d="M 603.10 434.10 L 602.80 432.60 L 602.20 431.70 L 601.30 431.10 L 598.90 430.50 L 595.10 431.10 L 591.80 432.10 L 588.80 433.40 L 583.80 436.90 L 579.30 441.90 L 577.70 444.60 L 576.60 447.20 L 576.40 448.90 L 576.60 450.20 L 577.40 451.30 L 578.50 452.00 L 579.80 452.20 L 581.10 452.00 L 582.60 450.50 L 585.10 446.00 L 588.30 442.30 L 590.50 440.50 L 594.20 438.60 L 602.00 436.80 L 602.90 435.40 L 603.10 434.10 Z" fill="#000000" fill-rule="nonzero" node-id="61" stroke="none" target-height="21.700012" target-width="26.699951" target-x="576.4" target-y="430.5"/><path d="M 643.70 491.50 L 635.70 492.90 L 632.90 493.90 L 630.20 495.40 L 626.50 498.40 L 624.50 500.90 L 623.40 502.90 L 622.60 505.30 L 622.90 506.60 L 623.60 507.60 L 624.70 508.20 L 626.00 508.50 L 627.20 508.20 L 628.30 507.50 L 632.70 502.20 L 634.30 500.90 L 636.60 499.80 L 639.20 499.10 L 642.90 498.80 L 647.90 498.90 L 649.50 498.70 L 650.50 498.20 L 651.60 496.70 L 651.80 495.40 L 651.10 493.40 L 649.10 492.20 L 643.70 491.50 Z" fill="#000000" fill-rule="nonzero" node-id="63" stroke="none" target-height="17" target-width="29.200012" target-x="622.6" target-y="491.5"/><path d="M 599.30 455.30 L 598.30 455.50 L 596.90 456.70 L 595.70 459.70 L 595.40 462.30 L 596.30 467.40 L 596.80 468.30 L 598.40 469.30 L 600.50 469.30 L 601.90 468.20 L 602.80 465.40 L 603.20 462.20 L 602.10 457.20 L 601.60 456.20 L 600.70 455.60 L 599.30 455.30 Z" fill="#000000" fill-rule="nonzero" node-id="65" stroke="none" target-height="14" target-width="7.799988" target-x="595.4" target-y="455.3"/><path d="M 622.80 469.00 L 624.60 468.40 L 626.10 466.40 L 626.60 464.80 L 627.00 461.40 L 626.80 459.20 L 625.60 456.60 L 624.80 455.90 L 623.10 455.40 L 621.60 455.70 L 620.10 457.10 L 619.50 459.50 L 619.40 461.90 L 619.60 466.40 L 620.10 467.60 L 620.90 468.40 L 622.80 469.00 Z" fill="#000000" fill-rule="nonzero" node-id="67" stroke="none" target-height="13.600006" target-width="7.5999756" target-x="619.4" target-y="455.4"/><path d="M 833.40 300.50 L 835.20 300.00 L 836.00 299.30 L 836.60 298.20 L 836.80 296.40 L 836.70 278.20 L 840.50 280.00 L 842.90 280.60 L 844.80 280.30 L 847.40 279.30 L 847.30 295.20 L 847.80 298.00 L 848.50 298.90 L 849.40 299.60 L 850.80 299.80 L 852.20 299.60 L 853.20 299.00 L 853.80 298.00 L 854.20 295.90 L 854.40 292.20 L 854.20 268.60 L 853.70 265.90 L 853.20 264.80 L 851.50 263.70 L 849.10 263.70 L 847.50 264.90 L 842.70 273.40 L 840.30 271.10 L 837.60 266.70 L 836.60 265.50 L 835.40 264.70 L 833.90 264.40 L 832.60 264.60 L 829.40 266.80 L 828.60 267.70 L 828.10 269.90 L 828.30 274.00 L 829.70 294.80 L 830.20 298.40 L 830.70 299.30 L 832.30 300.40 L 833.40 300.50 Z" fill="#000000" fill-rule="nonzero" node-id="69" stroke="none" target-height="36.799988" target-width="26.300049" target-x="828.1" target-y="263.7"/><path d="M 804.00 287.10 L 804.40 292.30 L 805.70 297.10 L 808.00 300.80 L 810.80 303.20 L 814.60 304.50 L 817.10 304.70 L 821.70 304.20 L 825.60 303.00 L 827.10 302.10 L 827.90 301.30 L 828.60 299.30 L 828.10 297.50 L 827.50 296.80 L 826.70 296.30 L 825.40 296.00 L 819.90 297.40 L 817.10 297.60 L 814.00 297.10 L 812.80 295.80 L 811.40 291.10 L 811.20 288.60 L 815.80 288.00 L 820.00 286.60 L 821.00 285.80 L 821.60 284.80 L 821.80 283.50 L 821.60 282.30 L 820.90 281.30 L 819.90 280.70 L 818.70 280.50 L 811.10 282.10 L 811.10 272.00 L 817.40 272.20 L 819.60 272.00 L 822.20 271.00 L 823.30 269.70 L 823.50 268.70 L 823.30 267.20 L 822.60 266.30 L 821.50 265.70 L 819.30 265.30 L 807.40 265.20 L 805.50 265.40 L 803.70 266.60 L 803.10 268.20 L 803.20 269.10 L 804.30 270.80 L 804.70 272.80 L 804.00 287.10 Z" fill="#000000" fill-rule="nonzero" node-id="71" stroke="none" target-height="39.5" target-width="25.5" target-x="803.1" target-y="265.2"/><path d="M 859.70 270.90 L 859.90 298.10 L 860.20 300.60 L 860.80 302.50 L 861.40 303.60 L 862.40 304.10 L 863.70 304.30 L 865.00 304.00 L 866.50 302.80 L 866.90 301.70 L 867.10 299.90 L 866.50 287.10 L 866.90 286.00 L 868.20 284.60 L 873.80 279.80 L 875.50 277.60 L 876.90 274.10 L 877.20 272.00 L 876.50 268.70 L 875.60 267.20 L 873.20 264.60 L 869.80 262.70 L 865.90 262.00 L 862.20 262.60 L 860.40 263.30 L 858.20 265.10 L 857.50 267.10 L 857.80 268.20 L 858.90 270.10 L 859.70 270.90 Z M 866.10 268.80 L 867.70 269.10 L 869.00 269.80 L 869.80 270.90 L 870.10 272.00 L 869.20 274.30 L 866.40 277.00 L 866.10 268.80 Z" fill="#000000" fill-rule="nonzero" node-id="73" stroke="none" target-height="42.299988" target-width="19.700012" target-x="857.5" target-y="262"/><path d="M 906.40 273.60 L 908.00 274.60 L 909.00 275.60 L 909.60 276.80 L 909.70 293.20 L 910.30 297.30 L 910.90 298.30 L 911.80 299.00 L 913.20 299.20 L 914.70 298.90 L 915.90 298.00 L 916.70 296.70 L 917.00 295.20 L 916.90 286.70 L 916.30 277.00 L 916.70 274.60 L 917.60 272.40 L 918.90 270.50 L 923.30 265.60 L 924.20 264.10 L 924.60 262.80 L 924.30 261.70 L 923.60 260.70 L 922.70 260.10 L 921.60 259.80 L 919.90 260.30 L 911.40 268.90 L 907.90 266.90 L 906.30 265.70 L 904.40 263.50 L 903.70 263.10 L 902.80 262.90 L 900.90 263.70 L 899.70 265.30 L 899.50 266.30 L 900.00 268.20 L 903.40 271.60 L 906.40 273.60 Z" fill="#000000" fill-rule="nonzero" node-id="75" stroke="none" target-height="39.400024" target-width="25.099976" target-x="899.5" target-y="259.8"/><path d="M 880.70 269.50 L 881.60 269.40 L 883.80 268.30 L 885.90 268.30 L 885.80 285.50 L 886.10 294.00 L 886.90 297.40 L 888.10 298.90 L 889.10 299.30 L 890.30 299.40 L 891.90 299.20 L 893.00 298.40 L 894.40 296.50 L 894.70 295.00 L 894.60 294.10 L 893.10 291.80 L 893.00 290.70 L 892.60 269.20 L 896.00 268.80 L 897.20 268.20 L 898.20 266.80 L 898.20 264.40 L 897.00 262.90 L 894.70 262.10 L 885.50 261.60 L 880.50 262.20 L 878.10 263.50 L 877.40 264.50 L 877.10 265.90 L 877.40 267.30 L 878.10 268.40 L 879.30 269.20 L 880.70 269.50 Z" fill="#000000" fill-rule="nonzero" node-id="77" stroke="none" target-height="37.799988" target-width="21.100037" target-x="877.1" target-y="261.6"/></svg>
                        <p class="text-gray-600 text-sm dark:text-gray-400">未查询到结果, 换个姿势搜索吧~</p>
                    </div>
                </div>

                <!-- Modal footer -->
                <div class="p-4 md:p-5 border-t text-xs flex items-center text-gray-400 dark:border-gray-600">
                    <!-- Esc 退出提示 -->
                    <span class="px-2 py-[1px] flex-none border rounded dark:border-gray-600">Esc</span>
                    <span class="text-gray-400 ml-2">关闭</span>

                    <!-- 底层技术介绍 -->
                    <span class="ml-auto">基于 <a href="https://lucene.apache.org/" target="_blank"
                            class="underline">Apache Lucene</a> 全文检索引擎开发</span>
                </div>
            </div>
        </div>
    </div>
</template>

<script setup>
import { onMounted, ref, onBeforeUnmount, watch } from 'vue'
import { initCollapses, initDropdowns, initModals } from 'flowbite'
import { useBlogSettingsStore } from '@/stores/blogsettings'
import { useUserStore } from '@/stores/user'
import { useRouter, useRoute } from 'vue-router'
import { showMessage } from '@/composables/util'
import { Modal } from 'flowbite'
import { getArticleSearchPageList } from '@/api/frontend/search'
import { useDark, useToggle } from '@vueuse/core'


const isDark = useDark()
const toggleDark = useToggle(isDark)

// 文章搜索结果
const searchArticles = ref([])
// 当前页码
const current = ref(1)
// 总数据量
const total = ref(0)
// 每页显示数据量
const size = ref(10)
// 总页数
const pages = ref(0)
// 搜索关键词
const searchWord = ref('')
// 搜索输入框引用
const searchInputRef = ref(null)

// 监听搜索框变化
watch(searchWord, (newText, oleText) => {
    console.log(`新值： ${newText}, 旧值： ${oleText}`)

    if(newText && newText !== oleText) {
        // 搜索关键词
        renderSearchArticles({current: current.value, size: size.value, word: newText})
    } else if (newText == '') {
        searchArticles.value = []
    }
})

// 搜索加载 Loading
const searchLoading = ref(false)

// 后台检索关键词
function renderSearchArticles(data) {
    searchLoading.value = true
    getArticleSearchPageList(data).then(res => {
        console.log(res)
        if (res.success) {
            searchArticles.value = res.data
            current.value = res.current
            size.value = res.size
            total.value = res.total
            pages.value = res.pages
        }
    }).finally(() => searchLoading.value = false)

}

// 初始化 flowbit 相关组件
const searchModal = ref(null)

const modalOptions = {
    placement: 'top-center', // 弹框位置
    backdrop: 'dynamic',
    backdropClasses:
        'bg-gray-900/50 dark:bg-gray-900/80 fixed inset-0 z-40',
    closable: true,
    onHide: () => {
        console.log('modal is hidden');
    },
    onShow: () => {
        console.log('modal is shown');
    },
    onToggle: () => {
        console.log('modal has been toggled');
    },
};

// instance options object
const instanceOptions = {
    id: 'searchModalEl',
    override: true
};


// 点击搜索框
const clickSearchBtn = () => {
    // 显示搜索框
    searchModal.value.show()
    searchInputRef.value.focus()
}

// 定义路由
const router = useRouter()

// 当前路径
const route = useRoute()
const currPath = ref(route.path)

// 初始化 flowbit 相关组件
onMounted(() => {
    initCollapses();
    initDropdowns();
    initModals();

    // 初始化
    const $modalElement = document.querySelector('#search-modal');
    searchModal.value = new Modal($modalElement, modalOptions, instanceOptions);

    // 注册键盘事件监听器
    window.addEventListener('keydown', handlekeyDown);
})

onBeforeUnmount(() => {
    // 在组件销毁前移除事件监听器，防止内存泄漏
    window.removeEventListener('keydown', handlekeyDown);
})

// 键盘监听
const handlekeyDown = (event) => {
    // 检查是否按下了 Ctrl 键和 K 键
    if (event.ctrlKey && event.key === 'k') {
        event.preventDefault();
        console.log('ctrl k 被按了')

        searchModal.value.show()

        // 激活搜索框
        searchInputRef.value.focus();
    }
}


// 引入博客设置信息 store
const blogSettingsStore = useBlogSettingsStore()

// 是否登录，通过 userStore 中的 userInfo 对象是否有数据来判断
const userStore = useUserStore()
// 获取 userInfo 对象所有属性名称的数组
const keys = Object.keys(userStore.userInfo)
// 若大于零，则表示用户已登录
const isLogined = ref(keys.length > 0)

// 退出登录
const logout = () => {
    userStore.logout()
    isLogined.value = false
    showMessage('退出成功')
}

// 上一页
const prePage = () => {
    renderSearchArticles({current: current.value - 1, size: size.value, word: searchWord.value})
}

// 下一个
const nextPage = () => {
    renderSearchArticles({current: current.value + 1, size: size.value, word: searchWord.value})    
}

// 点击跳转详情界面
const jumpToArticleDetailPage = (articleId) => {
    searchModal.value.hide()
    router.push('/article/' + articleId)
}
</script>

<style>
.vt-switch {
    --vt-c-divider-light-1: rgba(60, 60, 60, .29);
    --vt-c-divider: var(--vt-c-divider-light-1);
    --vt-c-white-mute: #f1f1f1;
    --vt-c-bg-mute: var(--vt-c-white-mute);
    position: relative;
    border-radius: 11px;
    display: block;
    width: 40px;
    height: 22px;
    flex-shrink: 0;
    border: 1px solid var(--vt-c-divider);
    background-color: var(--vt-c-bg-mute);
    transition: border-color .25s, background-color .25s;
}

.dark .vt-switch {
    --vt-c-white-mute: #f1f1f1;
    background-color: #2f2f2f;
    transition: border-color .25s, background-color .25s;
}

.vt-switch-check {
    --vt-c-white: #ffffff;
    --vt-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);
    position: absolute;
    top: 1px;
    left: 1px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--vt-c-white);
    box-shadow: var(--vt-shadow-1);
    transition: background-color .25s, transform .25s;
}

.dark .vt-switch-appearance .vt-switch-check {
    transform: translate(18px);
}

.dark .vt-switch-check {
    --vt-c-black: #1a1a1a;
    background-color: var(--vt-c-black);
}

.vt-switch-icon {
    position: relative;
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    overflow: hidden;
}

.vt-switch-icon svg {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 12px;
    height: 12px;
    fill: rgba(60, 60, 60, .7);
}

.dark .vt-switch-icon svg {
    fill: rgba(255, 255, 255, .87);
    transition: opacity .25s;
}

.dark .vt-switch-appearance-moon {
    opacity: 1;
}

.vt-switch-appearance-sun {
    opacity: 1;
}


/* 暗黑模式 body 背景色 */
.dark body {
   --tw-bg-opacity: 1;
    background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
</style>